package com.kele.service;

import com.kele.domain.Blog;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface BlogService {

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:31 查询所有博客对象
     * @return java.util.List<com.kele.domain.Blog>
      */
    List<Blog> findBlogs();

    /**
     * 根据id查询博客
     * @param id
     * @return
     */
    Blog queryById(int id);

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:32 根据博客类型查询博客对象
     * @param field
     * @return java.util.List<com.kele.domain.Blog>
      */
    List<Blog> findByTitle( @Param("field") String field);

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:32 删除博客对象
     * @param id
     * @return int
      */
    int deleteBlog(int id);

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:32 点赞+1
     * @param bid
     * @return int
      */
    int addThumbsUp(int bid);

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:33 点赞-1
     * @param bid
     * @return int
      */
    int subThumbsUp(int bid);

    /**
     * 发布博客
     * @param blog
     * @return
     */
    Integer addBlog(Blog blog);

    /**
      *@author 赵奥林
      *@description 2021/5/27 23:33 增加热度
     * @param id
     * @return int
      */
    int addDoh(int id);

    /**
     * 根据id查询博客
     * @param bid
     * @return
     */
    Blog findBlogById(int bid);

    /**
     * 展示博客内容到页面上
     * @return
     */
    List<Blog> showBlogs();

    int countArticle(String blogger);

    /**
     * 收藏+1
     *
     * @return
     */
    int addCollection(int id);

    /**
     * 收藏-1
     *
     * @return
     */
    int subCollection(int id);

    /**
     * 博主下遍历博客
     * @param blogger
     * @return
     */
    List<Blog> findBlogsByBlogger(String blogger);

}

